[TOC]

1. 问题由来

在博客搭建过程中,由于本地引用图片上传太慢,所以使用了七牛云来搭建图床,开始时,浏览器可以正常。在后来谷歌浏览器更新后,博客首页图片无法加载出来(图片引用的是url而且是http形式的)而其它浏览器可以显示,我以为是浏览器缓存问题,于是删了缓存,可是还是没有效果。所以归结为浏览器原因。F12谷歌开发者模式中找到了关键原因,如下:

1
Mixed content: load all resources via HTTPS to improve the security of your site

2. 原因

在我们的正式项目中,一般使用的都是https协议,使用https协议打开项目,在调用第三方的接口时,第三方接口如果使用的是http协议,这样Chrome浏览器(新版本),就会自动将第三方接口的http协议升级为https协议,使浏览器没有安全警告。如果,第三方接口不支持https协议,那么就会导致接口调用失败。在打开网址时没有出现锁头,并且显示此网址并非完全安全,虽然使用https协议访问但是网站中夹有http形式的网址链接。所以显示不完全安全。

3. 解决方案

此问题主要由浏览器拦截导致!在设置中打开隐私设置和安全性-网站设置-不安全内容,然后将其信任的网址添加进去。然后网页就能正常显示了。

最主要的办法还是将http换成https。